package com.ambulance.project.manager.domain;

import com.ambulance.framework.aspectj.lang.annotation.Excel;
import com.ambulance.framework.web.domain.BaseEntity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;

import java.util.Date;

/**
 * 调度病例详细信息对象 biz_dispatchCase
 *
 * @author zr
 * @date 2020-05-11
 */
public class BizDispatchcase extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 病例标识
     */
    private Long dispatchCaseID;

    /**
     * 患者标识
     */
    @Excel(name = "患者标识")
    private Long patientId;

    /**
     * 导出数据所需查询条件
     */
    @TableField(exist = false)
    private String ids;

    public String getIds() {
        return ids;
    }

    public void setIds(String ids) {
        this.ids = ids;
    }

    /**
     * 调度标识
     */
    @Excel(name = "调度标识")
    private Long dispatchID;

    /**
     * GCS评分
     */
    @Excel(name = "GCS评分")
    private Integer gcsScore;

    /**
     * NHISS评分
     */
    @Excel(name = "NHISS评分")
    private Long nhissScore;

    /**
     * 医生姓名
     */
    @Excel(name = "医生姓名")
    private String doctorName;

    /**
     * 患者姓名
     */
    @Excel(name = "患者姓名")
    private String patientName;

    /**
     * 患者性别 0=未知,1=男,2=女
     */
    @Excel(name = "患者性别 0=未知,1=男,2=女")
    private Integer patientSex;

    /**
     * 患者年龄
     */
    @Excel(name = "患者年龄")
    private Integer patientAge;

    /**
     * 患者联系方式
     */
    @Excel(name = "患者联系方式")
    private String patientMobile;

    /**
     * 患者住址
     */
    @Excel(name = "患者住址")
    private String patientAddress;

    /**
     * 病情评估枚举，0-3轻中重
     */
    @Excel(name = "病情评估枚举，0-3轻中重")
    private Integer patientLevel;

    /**
     * 0草稿，1急救中，2已救治，3已结算
     */
    @Excel(name = "0草稿，1急救中，2已救治，3已结算")
    private Long caseStatus;

    /**
     * 主诉情况
     */
    @Excel(name = "主诉情况")
    private String majorCase;

    /**
     * 初步诊断
     */
    @Excel(name = "初步诊断")
    private String baseHelp;

    /**
     * 药敏情况，药敏史
     */
    @Excel(name = "药敏情况，药敏史")
    private String medicineSensitive;

    /**
     * 用药史
     */
    @Excel(name = "用药史")
    private String medicineHistory;

    /**
     * 血型
     */
    @Excel(name = "血型")
    private String bloodType;

    /**
     * 既往病史
     */
    @Excel(name = "既往病史")
    private String treatmentRecord;

    /**
     * 家族遗传史
     */
    @Excel(name = "家族遗传史")
    private String familyInheritance;

    /**
     * 现病史
     */
    @Excel(name = "现病史")
    private String medicineNow;

    /**
     * 体格检查备注
     */
    @Excel(name = "体格检查备注")
    private String checkResult;

    /**
     * 抢救措施
     */
    @Excel(name = "抢救措施")
    private String treatMeasure;

    /**
     * 用药情况
     */
    @Excel(name = "用药情况")
    private String medicine;

    /**
     * 出车情况，0送往本院，1送往他院，2未接到患者
     */
    @Excel(name = "出车情况，0送往本院，1送往他院，2未接到患者")
    private Integer carCase;

    /**
     * 0要求送往他院，1患者伤情需要，2拒绝去医院，3患者已离开，4无法联系到患者
     */
    @Excel(name = "0要求送往他院，1患者伤情需要，2拒绝去医院，3患者已离开，4无法联系到患者")
    private Integer carCaseRemark;

    /**
     * 急救报告
     */
    @Excel(name = "急救报告")
    private String treatReport;

    /**
     * 会诊记录标识
     */
    @Excel(name = "会诊记录标识")
    private Long treatRecordID;

    /**
     * 车牌号
     */
    @Excel(name = "车牌号")
    private String vin;

    /**
     * 医院
     */
    @Excel(name = "医院")
    private String hospital;

    private Integer carID;

    /**
     * 医院Id
     */
    @Excel(name = "医院Id")
    private Long hospitalID;

    /**
     * 病例时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "病例时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date time;

    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "出车时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date leaveHospTime;

    public Date getLeaveHospTime() {
        return leaveHospTime;
    }

    public void setLeaveHospTime(Date leaveHospTime) {
        this.leaveHospTime = leaveHospTime;
    }

    /**
     * 医院标识
     */
    @Excel(name = "医院标识")
    private Long uid;

    /**
     * 调度流水
     */
    @Excel(name = "调度流水")
    private String flow;

    /**
     * 病发地点
     */
    @Excel(name = "病发地点")
    private String patientLocal;

    private String patientCard;

    private Date lastDispatchTime;

    private Date endLastDispatchTime;

    private Integer consultationMark;

    public Integer getConsultationMark() {
        return consultationMark;
    }

    public void setConsultationMark(Integer consultationMark) {
        this.consultationMark = consultationMark;
    }

    public Date getLastDispatchTime() {
        return lastDispatchTime;
    }

    public void setLastDispatchTime(Date lastDispatchTime) {
        this.lastDispatchTime = lastDispatchTime;
    }

    public Date getEndLastDispatchTime() {
        return endLastDispatchTime;
    }

    public void setEndLastDispatchTime(Date endLastDispatchTime) {
        this.endLastDispatchTime = endLastDispatchTime;
    }

    public String getPatientCard() {
        return patientCard;
    }

    public void setPatientCard(String patientCard) {
        this.patientCard = patientCard;
    }

    /**
     * 填写状态 0=未填写,1=已填写
     */
    @Excel(name = "填写状态 0=未填写,1=已填写")
    private Integer formStatus;

    public void setCheckResult(String checkResult) {
        this.checkResult = checkResult;
    }

    public Integer getCarID() {
        return carID;
    }

    public void setCarID(Integer carID) {
        this.carID = carID;
    }

    public Long getDispatchCaseID() {
        return dispatchCaseID;
    }

    public void setDispatchCaseID(Long dispatchCaseID) {
        this.dispatchCaseID = dispatchCaseID;
    }

    public Long getPatientId() {
        return patientId;
    }

    public void setPatientId(Long patientId) {
        this.patientId = patientId;
    }

    public Long getDispatchID() {
        return dispatchID;
    }

    public void setDispatchID(Long dispatchID) {
        this.dispatchID = dispatchID;
    }

    public Integer getGcsScore() {
        return gcsScore;
    }

    public void setGcsScore(Integer gcsScore) {
        this.gcsScore = gcsScore;
    }

    public Long getNhissScore() {
        return nhissScore;
    }

    public void setNhissScore(Long nhissScore) {
        this.nhissScore = nhissScore;
    }

    public String getDoctorName() {
        return doctorName;
    }

    public void setDoctorName(String doctorName) {
        this.doctorName = doctorName;
    }

    public String getPatientName() {
        return patientName;
    }

    public void setPatientName(String patientName) {
        this.patientName = patientName;
    }

    public Integer getPatientSex() {
        return patientSex;
    }

    public void setPatientSex(Integer patientSex) {
        this.patientSex = patientSex;
    }

    public Integer getPatientAge() {
        return patientAge;
    }

    public void setPatientAge(Integer patientAge) {
        this.patientAge = patientAge;
    }

    public String getPatientMobile() {
        return patientMobile;
    }

    public void setPatientMobile(String patientMobile) {
        this.patientMobile = patientMobile;
    }

    public String getPatientAddress() {
        return patientAddress;
    }

    public void setPatientAddress(String patientAddress) {
        this.patientAddress = patientAddress;
    }

    public Integer getPatientLevel() {
        return patientLevel;
    }

    public void setPatientLevel(Integer patientLevel) {
        this.patientLevel = patientLevel;
    }

    public Long getCaseStatus() {
        return caseStatus;
    }

    public void setCaseStatus(Long caseStatus) {
        this.caseStatus = caseStatus;
    }

    public String getMajorCase() {
        return majorCase;
    }

    public void setMajorCase(String majorCase) {
        this.majorCase = majorCase;
    }

    public String getBaseHelp() {
        return baseHelp;
    }

    public void setBaseHelp(String baseHelp) {
        this.baseHelp = baseHelp;
    }

    public String getMedicineSensitive() {
        return medicineSensitive;
    }

    public void setMedicineSensitive(String medicineSensitive) {
        this.medicineSensitive = medicineSensitive;
    }

    public String getMedicineHistory() {
        return medicineHistory;
    }

    public void setMedicineHistory(String medicineHistory) {
        this.medicineHistory = medicineHistory;
    }

    public String getBloodType() {
        return bloodType;
    }

    public void setBloodType(String bloodType) {
        this.bloodType = bloodType;
    }

    public String getTreatmentRecord() {
        return treatmentRecord;
    }

    public void setTreatmentRecord(String treatmentRecord) {
        this.treatmentRecord = treatmentRecord;
    }

    public String getFamilyInheritance() {
        return familyInheritance;
    }

    public void setFamilyInheritance(String familyInheritance) {
        this.familyInheritance = familyInheritance;
    }

    public String getMedicineNow() {
        return medicineNow;
    }

    public void setMedicineNow(String medicineNow) {
        this.medicineNow = medicineNow;
    }

    public String getCheckResult() {
        return checkResult;
    }

    public String getTreatMeasure() {
        return treatMeasure;
    }

    public void setTreatMeasure(String treatMeasure) {
        this.treatMeasure = treatMeasure;
    }

    public String getMedicine() {
        return medicine;
    }

    public void setMedicine(String medicine) {
        this.medicine = medicine;
    }

    public Integer getCarCase() {
        return carCase;
    }

    public void setCarCase(Integer carCase) {
        this.carCase = carCase;
    }

    public Integer getCarCaseRemark() {
        return carCaseRemark;
    }

    public void setCarCaseRemark(Integer carCaseRemark) {
        this.carCaseRemark = carCaseRemark;
    }

    public String getTreatReport() {
        return treatReport;
    }

    public void setTreatReport(String treatReport) {
        this.treatReport = treatReport;
    }

    public Long getTreatRecordID() {
        return treatRecordID;
    }

    public void setTreatRecordID(Long treatRecordID) {
        this.treatRecordID = treatRecordID;
    }

    public String getVin() {
        return vin;
    }

    public void setVin(String vin) {
        this.vin = vin;
    }

    public String getHospital() {
        return hospital;
    }

    public void setHospital(String hospital) {
        this.hospital = hospital;
    }

    public Long getHospitalID() {
        return hospitalID;
    }

    public void setHospitalID(Long hospitalID) {
        this.hospitalID = hospitalID;
    }

    public Date getTime() {
        return time;
    }

    public void setTime(Date time) {
        this.time = time;
    }

    public Long getUid() {
        return uid;
    }

    public void setUid(Long uid) {
        this.uid = uid;
    }

    public String getFlow() {
        return flow;
    }

    public void setFlow(String flow) {
        this.flow = flow;
    }

    public String getPatientLocal() {
        return patientLocal;
    }

    public void setPatientLocal(String patientLocal) {
        this.patientLocal = patientLocal;
    }

    public Integer getFormStatus() {
        return formStatus;
    }

    public void setFormStatus(Integer formStatus) {
        this.formStatus = formStatus;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("dispatchCaseID", getDispatchCaseID())
                .append("patientId", getPatientId())
                .append("dispatchID", getDispatchID())
                .append("gcsScore", getGcsScore())
                .append("nhissScore", getNhissScore())
                .append("doctorName", getDoctorName())
                .append("patientName", getPatientName())
                .append("patientSex", getPatientSex())
                .append("patientAge", getPatientAge())
                .append("patientMobile", getPatientMobile())
                .append("patientAddress", getPatientAddress())
                .append("patientLevel", getPatientLevel())
                .append("caseStatus", getCaseStatus())
                .append("majorCase", getMajorCase())
                .append("baseHelp", getBaseHelp())
                .append("medicineSensitive", getMedicineSensitive())
                .append("medicineHistory", getMedicineHistory())
                .append("bloodType", getBloodType())
                .append("treatmentRecord", getTreatmentRecord())
                .append("familyInheritance", getFamilyInheritance())
                .append("medicineNow", getMedicineNow())

                .append("checkResult", getCheckResult())
                .append("treatMeasure", getTreatMeasure())
                .append("medicine", getMedicine())
                .append("carCase", getCarCase())
                .append("carCaseRemark", getCarCaseRemark())
                .append("treatReport", getTreatReport())
                .append("treatRecordID", getTreatRecordID())
                .append("vin", getVin())
                .append("hospital", getHospital())
                .append("hospitalID", getHospitalID())
                .append("time", getTime())
                .append("uid", getUid())
                .append("flow", getFlow())
                .append("patientLocal", getPatientLocal())
                .append("formStatus", getFormStatus())
                .toString();
    }
}
